Network interfaces for programmable NICs and multicore platforms

نویسندگان

  • Andrés Ortiz
  • Julio Ortega
  • Antonio F. Díaz
  • Alberto Prieto
چکیده

1389-1286/$ see front matter 2009 Elsevier B.V doi:10.1016/j.comnet.2009.09.011 * Corresponding author. Tel.: +34 952134166; fax E-mail address: [email protected] (A. Ortiz). The availability of multicore processors and programmable NICs, such as TOEs (TCP/IP Offloading Engines), provides new opportunities for designing efficient network interfaces to cope with the gap between the improvement rates of link bandwidths and microprocessor performance. This gap poses important challenges related with the high computational requirements associated to the traffic volumes and wider functionality that the network interface has to support. This way, taking into account the rate of link bandwidth improvement and the ever changing and increasing application demands, efficient network interface architectures require scalability and flexibility. An opportunity to reach these goals comes from the exploitation of the parallelism in the communication path by distributing the protocol processing work across processors which are available in the computer, i.e. multicore microprocessors and programmable NICs. Thus, after a brief review of the different solutions that have been previously proposed for speeding up network interfaces, this paper analyzes the onloading and offloading alternatives. Both strategies try to release host CPU cycles by taking advantage of the communication workload execution in other processors present in the node. Nevertheless, whereas onloading uses another general-purpose processor, either included in a chip multiprocessor (CMP) or in a symmetric multiprocessor (SMP), offloading takes advantage of processors in programmable network interface cards (NICs). From our experiments, implemented by using a full-system simulator, we provide a fair and more complete comparison between onloading and offloading. Thus, it is shown that the relative improvement on peak throughput offered by offloading and onloading depends on the rate of application workload to communication overhead, the message sizes, and on the characteristics of the system architecture, more specifically the bandwidth of the buses and the way the NIC is connected to the system processor and memory. In our implementations, offloading provides lower latencies than onloading, although the CPU utilization and interrupts are lower for onloading. Taking into account the conclusions of our experimental results, we propose a hybrid network interface that can take advantage of both, programmable NICs and multicore processors. 2009 Elsevier B.V. All rights reserved.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Active Network Interface: Opportunities and Challenges

Modern Network Interface Cards (NICs) incorporate programmable processors, DMA channels, and a significant amount of memory on them. Thus, they are becoming faster, smarter, and intelligent and are being designated as “Active Network Interfaces.” Similar to an executive offloading common tasks to his/her secretary, a modern NIC provides flexibility to offload parts of a communication protocol f...

متن کامل

Cache-aware Interfaces for Compositional Real-Time Systems

Interface-based compositional analysis is by now a fairly established area of research in real-time systems. However, current research has not yet fully considered practical aspects, such as the effects of cache interferences on multicore platforms. This position paper discusses the analysis challenges and motivates the need for cache scheduling in this setting, and it highlights several resear...

متن کامل

Virtualization Services: Accelerated I/O Support in Multi-Core Systems

Virtualization services permit I/O subsystems and peripheral devices to be virtualized by placing select functionality on specialized cores and/or on cores situated ‘closer’ to devices. The approach is used to implement self-virtualized I/O (SVIO), which off-loads certain virtualization functionality onto the cores available on the I/O device, accelerating I/O functions, efficiently using key p...

متن کامل

Improving the Performance of Bandwidth-Demanding Applications by a Distributed Network Interface

In the last years, the market is demanding (scientific, multimedia, real-time, etc.) applications with high bandwidth requirements. To support this, the bandwidth of the network links has increased to reach multiple gigabit per second. Nevertheless, taking advantage of multigigabit per second links requires a lot of processor cycles for communication tasks, diminishing the processor cyles that ...

متن کامل

Demo: Implementing iptables using a programmable stateful data plane abstraction

Iptables is a well known Linux’s user interface to control the Netfiltermodule, which is responsible for processing packets traversing the Linux’s networking subsystem. In cooperation with the conntrackmodule, Netfilter supports a wide range of network functions such as: filtering, NAT, stateful firewall, load balancer, anomaly detection, etc. Given the central role of the iptables’ functions i...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • Computer Networks

دوره 54  شماره 

صفحات  -

تاریخ انتشار 2010